<?php defined('BASEPATH') OR exit('No direct script access allowed');

/**
 * Grupos_model
 * @author Thiago Braga <thiago@sitesg.com.br>
 * @access protected
 */
class Grupos_model extends CI_Model {

  /**
   * Seleciona todos os grupos do sistema.
   * @return [Object] Retorna as linhas da query.
   */
  public function select_grupos() {
    return $this->db->query("
      SELECT
      	id,
        nome,
        descricao
      FROM
        grupos
      WHERE
        situacao = 'A'
        AND nome <> 'Desenvolvedores'
      ORDER BY
        nome;")->result();
  }

  /**
   * Seleciona os módulos do sistema.
   * @return [Object] Retorna as linhas da query.
   */
  public function select_modulos() {
    return $this->db->query("
      SELECT
      	id,
        nome
      FROM
        modulos
      WHERE
        id > 8
        AND situacao = 'A';")->result();
  }

  /**
   * Seleciona as permissões do sistema.
   * @return [Object] Retorna as linhas da query.
   */
  public function select_permissoes($grupo, $modulo) {
    return $this->db->query("
      SELECT
        p.visualizar,
        p.adicionar,
        p.editar,
        p.excluir
      FROM
        permissoes p
      INNER JOIN
        modulos m ON m.id = p.modulo
      INNER JOIN
        grupos g ON g.id = p.grupo
      WHERE
      	p.grupo = $grupo
        AND p.modulo = $modulo
      	AND p.situacao = 'A'
      LIMIT 1;")->row();
  }

}

/* End of file profissionais_model.php */
/* Location: ./application/models/profissionais_model.php */